//package com.systop.common.controller;
//import java.io.File;
//import java.net.URLEncoder;
//import javax.servlet.http.HttpServletRequest;
//
//import org.apache.tomcat.util.http.fileupload.FileUtils;
//import org.springframework.http.HttpHeaders;
//import org.springframework.http.HttpStatus;
//import org.springframework.http.MediaType;
//import org.springframework.http.ResponseEntity;
//import org.springframework.stereotype.Controller;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestMethod;
//
//@Controller
//public class DownloadController {
//
//	@RequestMapping(value="/download",method=RequestMethod.GET)
//	public String download() {
//		return "download";
//	}
//
//	@RequestMapping(value="/todownload",method=RequestMethod.GET)
//	public ResponseEntity<byte []> fileDownload(HttpServletRequest request,String filename) throws Exception {
//		//�ҵ��ļ���·��
//		String path = request.getServletContext().getRealPath("/file");
//		//�����ļ���·�����ļ����ҵ����ļ�
//		File file = new File(path + File.separator + filename);
//		//���������������
//		filename = this.getFilename(request, filename);
//		//����ͷ��Ϣ
//		HttpHeaders headers = new HttpHeaders();
//		//֪ͨ�����һ���صķ�ʽ���ļ�
//		headers.setContentDispositionFormData("attachment", filename);
//		//����һ����ʽ�����ļ�
//		headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
//		//ʹ��spring mvc����ṩ��ResponseEntity�����������ݣ���һ���������ֽڣ��ڶ�������ͷ��Ϣ��������������״̬
//		return new ResponseEntity<byte []>(FileUtils.readFileToByteArray(file),headers,HttpStatus.OK);
//	}
//
//
//	public String getFilename(HttpServletRequest request, String fileName) throws Exception {
//		String [] IEBrowserKeyWords = {"MSIE","Trident","Edge"};
//		String userAgent = request.getHeader("User-Agent");
//		for (String keywords : IEBrowserKeyWords) {
//			if(userAgent.contains(keywords)) {
//				return URLEncoder.encode(fileName,"UTF-8");
//			}
//		}
//		//
//		return new String(fileName.getBytes("UTF-8"),"ISO-8859-1");
//	}
//}
